package db.relation;

import java.util.Hashtable;
import java.util.Iterator;
import java.util.ArrayList;

import db.BaseDAO;
import db.DAOFactory;
import db.TransformInterface;



import model.*;
import model.relation.LineSpots;

/**
 * 
 * Description: 对民俗活动与景点的关系集数据进行处理的DAO
 * 
 * @since  2009/2/23
 * @author ashen
 * 
 */
public class LPSetDAO extends BaseDAO implements TransformInterface<LineSpots> {
	
	public LPSetDAO(){
		setTableName("mapscheme.lpset");
	}
	
	/**
	 * the method findByLineId of class LPSetDAO
	 * 
	 * 该方法查找与指定ID的旅游路线相关的景点
	 * 
	 * @param id 旅游路线的ID
	 * @return LPSet类型的结果集合
	 */
	public ArrayList<LineSpots> findByLineId(int id){
		return findByProperty("lineId", id);
	}
	
	/**
	 * the method hashtable2Object of class LPSetDAO
	 * 
	 * 该方法将Hashtable类型的对象转换为LPSet的对象，并返回LPSet的对象.
	 * 
	 * @param hashtable 存储了一个景点信息的Hashtable类型的对象
	 * @return LPSet的对象.
	 */
	public LineSpots hashtable2Object(Hashtable hashtable){
		LineSpots lpSet=new LineSpots();
		int actionId=Integer.parseInt((String)hashtable.get("ACTIONID"));
		int pointId=Integer.parseInt((String)hashtable.get("POINTID"));
		Line line=DAOFactory.getLineDAO().findById(actionId);
		Spot point=DAOFactory.getPointDAO().findById(pointId);
		lpSet.setLine(line);
		lpSet.setPoint(point);
		return lpSet;
	}	
}